package com.zhuoyue.biz.core.api.dao;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhuoyue.biz.core.api.domain.InfraredDeviceButtonDO;

/**
 * @author wjming
 * @ClassName: InfraredDeviceButtonDao
 * @Description: 红外设备按钮
 * @Date 2021-07-08 13:45
 */
public interface InfraredDeviceButtonDao extends BaseMapper<InfraredDeviceButtonDO> {

    /**
     * 删除家庭中的红外设备按钮
     *
     * @param homeId
     * @return
     */
    int deleteInfraredDeviceButtonByHomeId(String homeId);

    /**
     * 查询红外设备的按钮列表
     *
     * @param infraredDeviceId
     * @return
     */
    List<InfraredDeviceButtonDO> selectInfraredDeviceButtonListByInfraredDeviceId(String infraredDeviceId);

    /**
     * 删除红外设备按钮
     *
     * @param infraredDeviceId
     * @return
     */
    int deleteInfraredDeviceButtonByInfraredDeviceId(String infraredDeviceId);

    /**
     * 查询红外学习仪中已存在的按钮编号
     *
     * @param deviceId
     * @return
     */
    List<Integer> selectAllButtonCodeByDeviceId(String deviceId);

    /**
     * 新增红外设备控制按钮
     *
     * @param button
     * @return
     */
    int insertInfraredDeviceButton(InfraredDeviceButtonDO button);

    /**
     * 根据主键查询
     *
     * @param id
     * @return
     */
    InfraredDeviceButtonDO selectInfraredDeviceButtonById(String id);

    /**
     * 小黑豆控制红外设备
     *
     * @param button
     * @return
     */
    int updateInfraredDeviceButtonByCodeRm(InfraredDeviceButtonDO button);

    /**
     * 小黑豆红外设备按钮信息插入
     *
     * @param button
     * @return
     */
    int insertInfraredDeviceButtonRm(InfraredDeviceButtonDO button);
}
